The invention relates generally to computer systems, and deals more particularly with a computer system in which different communication links are provided between a first computer and other processors within the system.
Heretofore, computer systems have included a host or main computer such as an IBM (registered trademark of IBM Corporation) 3090 mainframe or 4381 midrange computer with IBM 370 architecture, and a plurality of associated personal computers (PC's) operating as video display terminals (VDT). Each video display terminal comprises the hardware of a personal computer, and provides access to a host computer program loaded and run in the host computer while the VDT is connected to the host computer as an I/O terminal. In this prior art system, the host computer is the master, and initiates and controls all communications between the host computer and the VDT. To make a data transfer from the VDT to the host computer, the host computer must request the data from the VDT and inform the VDT of the location where the data will be received in the memory of the host computer. By prescribing the address, the host computer protects the remainder of its memory. Then the VDT can transmit the data to an I/O controller for the host computer. The I/O controller operates asynchronously relative to the VDT, and after receipt of the data, queues this work request for use of a memory bus leading to the host computer memory. Then, the I/O controller can write the data into the host computer memory. In the foregoing mode of operation of this system, there is only one application running, i.e. the application running on the mainframe, and the VDT serves as an I/O terminal.
It is possible in the foregoing system to disconnect any or all of the "VDT's" from the mainframe or midrange computer and operate it as a PC, and load a PC type of program into the PC. In this mode of operation, an application running on the PC cannot transfer data to an application running on the host computer.
It is also known in the prior art to allow a program running in the mainframe or midrange computer to exchange data with a program running in a PC by emulating the action of a VDT data exchange. In this case, the mainframe or midrange program writes data to the PC program using the same methods used to send data to the VDT. The data is, however, routed to the PC program instead of being displayed on a VDT. Similarly, the PC program sends data to the mainframe or midrange program by making the data appear to have been typed at a VDT. As an example of this technology, the IBM 3270 Data Stream described in "IBM 3270 Information Display System Data Stream Programmer's Reference" (GA23-0059), has been used by numerous vendors to achieve data transfer between PC's and mainframe or midrange computers. In these cases, the mainframe or midrange computer controls the transfer by using the same master/slave relationship used to control VDT's.
Heretofore, a prior art CETI (trademark of IBM Corporation) computer system comprised a mainframe or midrange computer with IBM 370 architecture, a Token Ring Adapter--I/O port, and a communication link therebetween. The I/O port could interface to a PC, and the PC could run an application at the same time that the mainframe computer runs an application. Under these conditions, either computer could transfer data to the other computer. This is advantageous in certain cases because it allows efficient interaction with intelligent devices.
In this CETI system, the mainframe computer includes in mainframe memory a channel program which controls the data transfer from the PC to the mainframe computer. The channel program comprises a sequential list of control words to control the data transfer. Each control word comprises (1) a command code such as Read, Write, etc., to define the type of transaction, (2) a data address to indicate the location for a Read, Write, etc. operation, (3) a set of flags such as stop, continue, etc. and (4) length information to indicate the length of the Read or Written Record. The control words in the list and the order of the words are predetermined and not alterable during operation. Consequently, the PC application cannot transfer data to the mainframe computer until the mainframe reaches the next "read" control word in the sequence. This regimentation of the channel program and the master/slave relationship of the mainframe computer to the PC delays such a data transfer. Also, this transaction is further slowed by the requirement to read each component of the word, check the validity of each component, and tailor the execution of the command to the parameters of the control word.
Accordingly, a general object of the present invention is to provide a computer system having a main computer, a high speed communication link connected between the main computer and a second computer, and a more controlled communication link connected between the main computer and a third computer.
A more specific object of the present invention is to provide a high speed communication link of the foregoing type which can be used with a computer having a 370 or other master/slave architecture.
Another specific object of the present invention is to provide a high speed communication link of the forgoing type which can be used between a relatively large mainframe or midrange computer and a relatively small personal computer, and permits the personal computer to run an application and initiate a data transfer to the mainframe or midrange computer in a peer-to-peer relationship.